package fiuba.algo3.vista;

import javax.swing.JButton;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;

import fiuba.algo3.control.Controlador;

import java.awt.Color;
import java.awt.event.*;

@SuppressWarnings("serial")
public class PantallaFinal extends JInternalFrame implements ActionListener{
	
	private JLabel mensajeMostrado;
	private JFPrincipal principal;
	private JButton salir;
	private JButton jugarDeNuevo;
	private int maxWidth;
	private int maxHeight;
	
	
	public PantallaFinal(int margenIzquierdo,int margenSuperior,int maxWidth,int maxHeight,String mensaje,
			Controlador controlador,JFPrincipal principal){
		
		this.principal = principal;
		this.maxWidth = maxWidth;
		this.maxHeight = maxHeight;
		
		setLayout(null);
		
		//colorearlo
		setBackground(new Color(153,153,204));

		
		//elimar bordes y northPane
		this.setBorder(null);
		javax.swing.plaf.InternalFrameUI ifu= this.getUI();
		((javax.swing.plaf.basic.BasicInternalFrameUI)ifu).setNorthPane(null);

		//crear boton
		salir = new JButton ("Salir");
		salir.setBounds((maxWidth-200)/2,(maxHeight-140)/2,200,40);
		salir.addActionListener(this);
		this.add(salir);

		jugarDeNuevo = new JButton ("Jugar de nuevo");
		jugarDeNuevo.setBounds((maxWidth-200)/2,(maxHeight-40)/2,200,40);
		jugarDeNuevo.addActionListener(this);
		this.add(jugarDeNuevo);

		//crear label
		mensajeMostrado = new JLabel(mensaje);
		mensajeMostrado.setBounds((maxWidth-250)/2,100,250,40);
		mensajeMostrado.setFont(new java.awt.Font("Tahoma", 0, 36)); 
		this.add(mensajeMostrado);
		
		Integer puntajeObtenido = controlador.getJuego().getPartida().getPuntaje();
		JLabel puntaje = new JLabel("Tu puntaje es: " + puntajeObtenido.toString());
		puntaje.setBounds((maxWidth-250)/2,160,250,40);
		puntaje.setFont(new java.awt.Font("Tahoma", 0, 22)); 
		this.add(puntaje);
		
		Integer mejorPuntaje = controlador.getJuego().getUsuario().getPuntajeMaximo();
		JLabel record = new JLabel("Tu record es: " + mejorPuntaje.toString());
		record.setBounds((maxWidth-250)/2,220,250,40);
		record.setFont(new java.awt.Font("Tahoma", 0, 22)); 
		this.add(record);
		
		this.setBounds(margenIzquierdo,margenSuperior,maxWidth,maxHeight);
		this.setVisible(true);
		this.setResizable(false);
		this.setMaximizable(false);
	

	}

	
	@Override
	public void actionPerformed(ActionEvent e){

		if (e.getSource()== salir) {
	    	System.exit(0);
        }

		else if (e.getSource()== jugarDeNuevo){
	    	this.setVisible(false);
	    	principal.elegirUsuario(maxWidth,maxHeight);
	    }
	}

}

